Exploit (securitatea informației)
Un exploit (din verbul „to exploit”, în sensul de a folosi ceva în avantaj propriu) este o secvență de cod, o succesiune de date sau un set de comenzi, ce profită de o defecțiune sau de o vulnerabilitate în scopul de a determina un comportament nedorit sau neprevazut al software-ului, hardware-ului de pe un calculator sau de pe alt dispozitiv electronic (de obicei computerizat). Acest comportament include în mod uzual obținerea controlului asupra sistemului de calcul sau permiterea escaladării de privilegii sau refuzului de servicii.
Criterii de clasificare
[modificare | modificare sursă]Există mai multe criterii de clasificare a exploit-urilor, cel mai utilizat dintre ele fiind modalitatea prin care atacatorul contactează ținta vulnerabilă. Un „exploit la distanță” asupra unei rețele, profită de vulnerabilitățile de securitate ale acesteia fără a fi avut acces dinainte la sistemul vulnerabil. Un „exploit local” necesită acces prealabil la sistemul vulnerabil și de obicei mărește privilegiile persoanei care îl rulează față de cele acordate de către administratorul de sistem.
Există de asemenea exploituri împotriva aplicațiilor client, constând de obicei în servere modificate, ce trimit un exploit dacă sunt accesate cu o aplicație client. Exploiturile împotriva aplicațiilor client ar putea necesita interacțiune cu utilizatorul și de aceea pot fi folosite în combinație cu metoda de inginerie socială.
O altă clasificare se poate face în funcție de acțiunea vizată prin atacul asupra unui sistem vulnerabil: obținerea de acces neautorizat la date, execuția de cod arbitrar, negarea de servicii.
Multe exploit-uri urmăresc obținerea de acces la nivel de superuser pe un calculator țintă. Se pot folosi de asemenea mai multe tipuri de exploituri, pentru a obține mai întâi acces de tip low-level și apoi pentru a escalada privilegiile în mod repetat până se ajunge ca atacatorul să poată opera ca root.
În mod normal, un exploit poate profita doar de o anumită vulnerabilitate. De obicei, când un exploit e făcut public, vulnerabilitatea este corectată printr-un patch, iar respectivul exploit nu mai poate fi utilizat pentru noile versiuni de software. Acesta este motivul pentru care unii hackeri blackhat nu își dezvăluie metodele, ci le păstrează doar pentru ei sau pentru alți hackeri. Astfel de exploituri sunt referite ca „exploituri zero-day” și obținerea de acces la astfel de exploituri este dorința atacatorilor neexperimentați, deseori referiți ca „script kiddies”.